Communications between networked devices can be effected in a variety of ways. Users can communicate with one another via voice connections; users can browse content on other systems or devices; messages can be sent using services such as Short Messaging Service (SMS) or Multimedia Messaging Service (MMS); messages may be e-mailed; and so forth. Some communications, such as SMS/MMS messaging and e-mail, may not involve real-time communication between the end users. Other communications involve an actual or logical connection between the communicating parties. A “session” generally refers to a logical connection between computers or other devices and the communications exchanged between those devices while they are connected. A multimedia session involves a set of multimedia senders and receivers and the data streams flowing therebetween.
Network architectures exist that facilitate real-time services in operator networks. For example, the 3rd Generation Partnership Project (3GPP) IP Multimedia core network Subsystem (IMS) is an architecture for supporting multimedia services via a Session Initiation Protocol (SIP) infrastructure. The IMS includes a set of SIP proxies, servers, and registrars. These entities, referred to as Call Session Control Function (CSCF), include Proxy CSCFs (P-CSCF) and Serving CSCFs (S-SCSF). The P-CSCF is the first contact point within the IMS for a subscriber/endpoint, often referred to as User Equipment (UE), or User Agents (UA). Two such P-CSCF SIP proxies are used in the SIP signaling. For example, a first P-CSCF-A may represent the SIP proxy to which the mobile station (MS) of User A is attached, and a second P-CSCF-B may represent the SIP proxy to which the MS of User B is attached. The S-CSCF performs the session control, registration, and other services for the subscriber, such that a first S-CSCF-A provides services for User A in User A's home network, and a second S-CSCF-B provides services for User B in User B's home network.
The 3GPP IMS utilizes SIP in order to achieve a wide range of functionality with the network. SIP, defined by the Internet Engineering Task Force (IETF), is an end-to-end signaling protocol that facilitates (among other things) the establishment, handling and release of end-to-end multimedia sessions. It can be used in applications such as Internet conferencing, telephony, presence, events notification, instant messaging, and the like. SIP enables network endpoints or “User Agents” (UA) to discover one another and to agree on a session characterization. User agents (UA) refer to the network endpoints that initiate SIP requests to establish media sessions, and to transmit/receive information. In order to locate other users, SIP utilizes an infrastructure of network proxy servers such as the P-CSCF and S-CSCF to which users can send registrations, invitations to sessions, and other requests via their terminals. SIP supports various aspects of establishing and terminating sessions, such as user availability, session setup such as ringing, session management, and some limited terminal capabilities.
SIP, being an end-to-end signaling protocol, allows only endpoints (UE/UA) to generate messages. Intermediary network elements, such as the SIP proxies, are therefore unable to change or terminate ongoing SIP sessions. However, SIP provides services in operator-owned networks, and the operator wants to have full control over the ongoing sessions in its network. The inability for the operator to release an ongoing session may be problematic. For example, a mobile user may leave the radio coverage area; the user may no longer be trusted or authenticated; the user's pre-paid card may exhaust its remaining balance; or the like. While an IMS or similar network may be able to release the ongoing media sessions at the bearer level (e.g., via the Go Interface between P-CSCF/PDF and a GGSN), network entities such as the P-CSCF and S-CSCF are unable to clear the call states in the other network entities and the remote UE at the signaling level.
One solution to this problem could be to allow the releasing entity to send a message, such as a REFER message, to one of the UEs. A SIP REFER message is described, for example, in IETF RFC 3515, entitled “The Session Initiation Protocol (SIP) Refer Method,” by R. Sparks. The REFER method indicates that the recipient (identified by the Request-URI) should contact a third party using the contact information provided in the request. Allowing the releasing entity to send a REFER message to one of the UEs would force the UE to send a BYE request to release the session. However, because the SIP stack in a UE is typically implemented via an application or other software, it can easily be modified by the owner of the UE, and therefore is not a reliable solution.
Further, in 3GPP IMS Release 5, the proxies (e.g., P-CSCF, S-CSCF) are allowed to generate and send BYE messages when the need for session release occurs. This solution, however, is not consistent with IETF SIP, and violates security for example. Also, this solution can only work in 3GPP IMS, as certain restrictions and architectural constraints apply.
Accordingly, there is a need in the communications industry for a manner of releasing sessions and call states in network entities at the signaling level. The present invention fulfills these and other needs, and offers other advantages over the prior art.